#ifndef NODE_ELEMENT_H
#define NODE_ELEMENT_H

#include <string>

#include "base_sub_element.h"
#include "multiplicity.h"
#include "base_element.h"

class NodeElement : public BaseSubElement {
	
public:
	NodeElement(const std::string & aRefElement, Multiplicity & aMult);
	virtual ~NodeElement();
	std::string getName();
	virtual std::string generateRegex(DoctypeDefinition* dtd);
	static std::string intToString(unsigned int number);
	
	virtual void print(std::ostream& out);

protected:
	Multiplicity multiplicity;
	std::string refElement;

};

#endif //NODE_ELEMENT_H
